const { preprocessVideosWithTpad } = require('../src/utils/ffmpegCommands_v2');
const fs = require('fs');
const path = require('path');

console.log('开始测试预处理视频函数...\n');

// 创建测试用的list.txt文件
const testDir = './temp/test_preprocess';
if (!fs.existsSync(testDir)) {
  fs.mkdirSync(testDir, { recursive: true });
}

const listFilePath = path.join(testDir, 'list.txt');

// 使用实际存在的视频文件进行测试
const testVideos = [
  './temp/glenworld/7/37/ant.mp4',
  './temp/glenworld/7/37/bee.mp4'
];

// 确保测试视频文件存在
for (const video of testVideos) {
  if (!fs.existsSync(video)) {
    console.error(`错误: 测试视频文件不存在 ${video}`);
    process.exit(1);
  }
}

// 写入测试列表文件
fs.writeFileSync(listFilePath, testVideos.join('\n') + '\n', 'utf-8');
console.log(`创建测试列表文件: ${listFilePath}`);
console.log('测试视频:');
testVideos.forEach((video, index) => {
  console.log(`  ${index + 1}. ${video}`);
});
console.log();

// 测试preprocessVideosWithTpad函数
preprocessVideosWithTpad(listFilePath)
  .then(() => {
    console.log('预处理完成!');
    
    // 显示更新后的列表文件内容
    const updatedContent = fs.readFileSync(listFilePath, 'utf-8');
    console.log('更新后的列表文件内容:');
    console.log(updatedContent);
  })
  .catch((error) => {
    console.error('预处理失败:', error);
  });